--Archivo: celda_multiplicadora.vhd
--Fecha de creación: 01/12/2010
--Última fecha de modificación: 04/02/2011
--Diseñador: Pedro Marquez.
--Diseño: celda_multiplicadora.
--Propósito: Celda que multiplica 1bit*1bit para disenar multiplicadores de mas bits

library IEEE;
use IEEE.std_logic_1164.all;

entity celda_multiplicadora is
port ( 	
	Multiplicando : IN std_logic;
	Multiplicador : IN std_logic;
	PP_IN : IN std_logic;
	C_IN : IN std_logic;
	C_OUT : OUT std_logic;
	PP_OUT : OUT std_logic );
end celda_multiplicadora;

ARCHITECTURE behavioral OF celda_multiplicadora IS

SIGNAL producto : std_logic;

BEGIN

	producto  <= Multiplicando AND Multiplicador;
	PP_OUT <= (producto XOR PP_IN) XOR C_IN;
	C_OUT  <= (producto AND PP_IN) OR (producto AND C_IN) OR (PP_IN AND C_IN);
	
END behavioral;
